﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Elkomp;

namespace MedicinskiUslugi {

	public partial class frmObrabotkaNaStavkiSpecifikacija : FormaBrowse {
		string idSpecifikacija = "";

		public frmObrabotkaNaStavkiSpecifikacija( string id ) {
			InitializeComponent();
			idSpecifikacija = id;
			this.tblSpecifikacijaExportTableAdapter.Fill( this.medicinskiUslugiDataSet.tblSpecifikacijaExport, idSpecifikacija );
			this.tblSpecifikacijaExportDataGridView.DataSource = tblSpecifikacijaExportBindingSource;
		}

		private void btnOk_Click( object sender, EventArgs e ) {
			DialogResult opc;
			opc = MessageBox.Show( "Дали сте сигурни ?", "Сите измени ќе бидат сочувани", MessageBoxButtons.YesNo, MessageBoxIcon.Question );
			if ( opc == DialogResult.Yes ) {
				this.Validate();
				this.tblSpecifikacijaExportBindingSource.EndEdit();
				this.tableAdapterManager.UpdateAll( medicinskiUslugiDataSet );
				this.Close();
			}
		}

		private void button2_Click( object sender, EventArgs e ) {
			List<string> zaBrisnje = new List<string>();
			foreach ( DataGridViewRow item in tblSpecifikacijaExportDataGridView.Rows ) {
				if ( item.Cells["Selected"].FormattedValue.ToString() == "True" ) {
					zaBrisnje.Add( item.Index.ToString() );
				}
			}

			brisiOdLista( zaBrisnje );
		}

		private void button1_Click( object sender, EventArgs e ) {
			List<string> zaBrisnje = new List<string>();
			foreach ( DataGridViewRow item in tblSpecifikacijaExportDataGridView.Rows ) {
				zaBrisnje.Add( item.Index.ToString() );
			}
			brisiOdLista( zaBrisnje );
		}

		private void brisiOdLista( List<string> l ) {
			l.Reverse();
			for ( int i = 0; i < l.Count; i++ ) {
				this.tblSpecifikacijaExportBindingSource.RemoveAt( int.Parse( l.ElementAt( i ).ToString() ) );
			}
		}

		private void селектирајГиСитеToolStripMenuItem_Click( object sender, EventArgs e ) {
			this.tblSpecifikacijaExportBindingSource.CancelEdit();
			foreach ( DataGridViewRow item in tblSpecifikacijaExportDataGridView.Rows ) {
				item.Cells["Selected"].Value = "True";
			}
		}

		private void деселектирајГиСитеToolStripMenuItem_Click( object sender, EventArgs e ) {
			this.tblSpecifikacijaExportBindingSource.CancelEdit();
			foreach ( DataGridViewRow item in tblSpecifikacijaExportDataGridView.Rows ) {
				item.Cells["Selected"].Value = "False";
			}
		}

		private void селектирајИнверзноToolStripMenuItem_Click( object sender, EventArgs e ) {
			this.tblSpecifikacijaExportBindingSource.CancelEdit();
			foreach ( DataGridViewRow item in tblSpecifikacijaExportDataGridView.Rows ) {
				if ( item.Cells["Selected"].FormattedValue.ToString() == "True" ) {
					item.Cells["Selected"].Value = "False";
				} else {
					item.Cells["Selected"].Value = "True";
				}
			}
		}

		private void бришиЈаМоменталнатаToolStripMenuItem_Click( object sender, EventArgs e ) {
			this.tblSpecifikacijaExportBindingSource.RemoveCurrent();
		}

		private void btnSite_Click( object sender, EventArgs e ) {
			this.tblSpecifikacijaExportTableAdapter.Fill( this.medicinskiUslugiDataSet.tblSpecifikacijaExport, idSpecifikacija );
		}

		private void nazivNaPacientTxtNum_DataRead() {
		}

		private void sifraNaPaketTxtNum_DataRead() {
		}

		private void dijagnozaTxtNum_DataRead() {
		}

		private void ekonomskaEdinica_DataRead() {
		}

		private void деактивирајДеселектирајToolStripMenuItem_Click( object sender, EventArgs e ) {
			Pocetok.Checked = false;
			Kraj.Checked = false;
			DateOd.Value = DateTime.Now;
			DateDo.Value = DateTime.Now.AddDays( 1 );
		}

		private void btnБарај_Click( object sender, EventArgs e ) {
			if ( Pocetok.Checked == true ) {
				this.tblSpecifikacijaExportTableAdapter.FillBySearchPocetok( medicinskiUslugiDataSet.tblSpecifikacijaExport, int.Parse( idSpecifikacija ), DateOd.Value.Date, DateDo.Value.Date, sifraNaPaketTxtNum.ret2, nazivNaPacientTxtNum.ret2, txtNum2.Text, int.Parse( ekonomskaEdinica.ret2 ), dijagnozaTxtNum.Text );
			}

			if ( Kraj.Checked == true ) {
			}

			if ( Pocetok.Checked == false && Kraj.Checked == false ) {
				this.tblSpecifikacijaExportTableAdapter.FillBySearchBezDatum( medicinskiUslugiDataSet.tblSpecifikacijaExport, Convert.ToInt32( idSpecifikacija ), sifraNaPaketTxtNum.ret2, nazivNaPacientTxtNum.ret2, txtNum2.Text, Convert.ToInt32( ekonomskaEdinica.ret2 ), dijagnozaTxtNum.Text );
			}
		}
	}
}